package com.zhongbo.java.websocket.service;

import com.zhongbo.java.websocket.model.User;
import com.zhongbo.java.websocket.vo.PageVo;

/**
 * 说明：
 * 用户服务接口定义
 *
 * @author 钟波dellNotebook
 * @since 2025年03月18日 星期二 14:01:34
 */
public interface IUserService {

    /**
     * 添加新用户
     * @param user 用户信息
     * @return 添加成功后的用户id
     */
    String add(User user);

    /**
     * 根据用户id删除一个用户
     * @param userId 用户id
     * @return 删除结果(1表示删除成功)
     */
    int deleteOne(String userId);

    /**
     * 更新用户信息
     * @param user 用户信息
     * @return 修改后的用户信息
     */
    User editByUserId(User user);

    /**
     * 查询用户详细信息
     * @param userId 用户id
     * @return 用户信息
     */
    User detail(String userId);

    /**
     * 分页查询用户信息
     * @param userName 用户名称查询条件
     * @param pageNumber 页码
     * @param pageSize 每页大小
     * @return 查询结果
     */
    PageVo<User> page(String userName, int pageNumber, int pageSize);

}
